// @ 是 src 的别名
import Home from '@/views/home'
import List from '@/views/list'
import PersonalCenter from '@/views/personal-center'
import Cart from '@/views/cart'
import DetailPage from '@/views/detail-page'
import SubCategory from '@/views/list/SubCategory'

import TabBar from '@/components/tab-bar'
import NavBar from '@/components/nav-bar'

// 路由的配置数组
const routes = [
  {
    // 主页
    path: '/',
    redirect: '/home' // 重定向
  },
  {
    // 主页
    path: '/home',
    name: 'Home', // 命名路由
    components: {
      header: NavBar,
      footer: TabBar,
      default: Home
    },
    meta: {
      isTab: true, // true 表示是需要添加到TabBar 上渲染的并跳转的路由
      title: '首页',
      icon: 'wap-home-o',
      isSearch: true
    }
  },
  {
    // 列表页
    path: '/list',
    name: 'List',
    components: {
      header: NavBar,
      footer: TabBar,
      default: List
    },
    meta: {
      isTab: true, // true 表示是需要添加到TabBar 上渲染的并跳转的路由
      title: '分类',
      icon: 'apps-o',
      isSearch: true
    },
    children: [// 嵌套子路由
      {
        path: 'sub/:cid', // 已冒号标价的是"动态路径参数"
        name: 'SubCategory',
        component: SubCategory,
        meta: {
          title: '子分类'
        }
      }
    ]
  },
  {
    // 购物车
    path: '/cart',
    name: 'Cart', // 命名路由
    components: {
      header: NavBar,
      footer: TabBar,
      default: Cart
    },
    meta: {
      isTab: true, // true 表示是需要添加到TabBar 上渲染的并跳转的路由
      title: '购物车',
      icon: 'shopping-cart-o',
      badge: 5
    }
  },
  {
    // 个人中心
    path: '/personal-center',
    name: 'PersonalCenter', // 命名路由
    components: {
      header: NavBar,
      footer: TabBar,
      default: PersonalCenter
    },
    meta: {
      isTab: true, // true 表示是需要添加到TabBar 上渲染的并跳转的路由
      title: '我的',
      icon: 'user-o'
    }
  },
  {
    // 详情页
    path: '/detail-page',
    name: 'DetailPage', // 命名路由
    components: {
      header: NavBar,
      default: DetailPage
    },
    meta: {
      title: '详情页'
    }
  }
]

export default routes
